axios.defaults.baseURL = 'http://api-breakingnews-web.itheima.net'

// 添加请求拦截器
// use方法里面可以传递两个函数
axios.interceptors.request.use(function (config) {
    /*打印config参数 */
    // console.log(config);
    // 判断路径中，是否包含/api或者/my
    // 或者>=0 或者!== -1或者>-1都说明查到了
    if (config.url.indexOf('/my') !== -1) {
        /* 这样赋值，不会影响原来头部信息设置 
        所有头部信息的设置，不要使用对象赋值，要使用.属性，不会出现覆盖 */
        config.headers.Authorization = localStorage.getItem('token')
    }
    return config;
}, function (error) {

    return Promise.reject(error);
});


// 添加响应拦截器-没有登录或者token失效，都要前置跳转到登录 页面
axios.interceptors.response.use(function (response) {
    /* 添加逻辑-判断响应信息，如果是：'身份认证失败！' 就强制跳转到登录页*/
    /* if (response.data.status == 1 && response.data.message === '身份认证失败！') */
    if (response.data.message === '身份认证失败！') {
        // 跳转到登录页面
        location.href = '/login.html'
        // 销毁无效token
        localStorage.removeItem('token')
    }
    return response;
}, function (error) {
    return Promise.reject(error);
});

// 格式化日期
function getTime(time) {

    var date = new Date(time)
    var y = date.getFullYear()
    var m1 = date.getMonth() + 1
    var d = date.getDate()

    var date = new Date()//务必注意需要获得当前的时间
    var h = date.getHours()
    // h = h < 10 ? '0' + h : h 
    h = h < 10 ? h.toString().padStart(2, '0') : h
    var m = date.getMinutes()
    m = m < 10 ? '0' + m : m
    var s = date.getSeconds()
    // s=s < 10 ? '0' + s : s 
    s = s < 10 ? s.toString().padStart(2, '0') : s
    return `${y}-${m1}-${d} ${h}:${m}:${s}`
}
